---
id: 5900f4d31000cf542c50ffe6
title: 'Завдання 359: новий готель Гільберта'
challengeType: 1
forumTopicId: 302019
dashedName: problem-359-hilberts-new-hotel
---

# --description--

Нескінченна кількість людей (під номерами 1, 2, 3 і т.д.) стали в чергу, щоб отримати кімнату в новому нескінченному готелі Гільберта. У готелі нескінченна кількість поверхів (під номерами 1, 2, 3 і т.д.) і на кожному поверсі нескінченна кількість номерів (під номерами 1, 2, 3 і т.д.).

Спочатку готель порожній. Гільберт оголосив правило, за яким $n^{\text{-на}}$ особа отримує кімнату: особа $n$ отримує першу порожню кімнату на найнижчому поверсі, що задовільняє одне з наступного:

- поверх порожній
- поверх не порожній, і якщо остання людина, яка отримала на цьому поверсі кімнату, є особою $m$, то $m + n$ є повним квадратом

Особа 1 отримує кімнату 1 на поверсі 1, оскільки цей поверх порожній.

Особа 2 не отримує кімнату 2 на поверсі 1, оскільки 1 + 2 = 3 не утворює повний квадрат.

Натомість особа 2 отримує кімнату 1 на поверсі 2, оскільки цей поверх порожній.

Особа 3 отримує кімнату 2 на поверсі 1, оскільки 1 + 3 = 4 утворює повний квадрат.

Згодом кожна людина з черги отримує кімнату в готелі.

Визначимо $P(f, r)$ як $n$, якщо особа $n$ займає кімнату $r$ на поверсі $f$, та 0, якщо ніхто не займає кімнату. Ось декілька прикладів:

$$\begin{align}   & P(1, 1) = 1 \\\\
  & P(1, 2) = 3 \\\\   & P(2, 1) = 2 \\\\
  & P(10, 20) = 440 \\\\   & P(25, 75) = 4863 \\\\
  & P(99, 100) = 19454 \end{align}$$

Знайдіть суму всіх $P(f, r)$ з додатними $f$ та $r$, за яких $f × r = 71\\,328\\,803\\,586\\,048$. У відповіді запишіть 8 останніх цифр.

# --hints--

`hilbertsNewHotel()` має повернути `40632119`.

```js
assert.strictEqual(hilbertsNewHotel(), 40632119);
```

# --seed--

## --seed-contents--

```js
function hilbertsNewHotel() {

  return true;
}

hilbertsNewHotel();
```

# --solutions--

```js
// solution required
```
